home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 2 / CU Amiga Magazine's Super CD-ROM 02 (1996)(EMAP Images)(GB)[!][issue 1996-04].iso / magazine / amiga_e / amigae.jan.archive / 000087_crash!freenet.…rleton.ca!ao443_Mon, 31 Jan 94 00:58:25 PST.msg < prev    next >
Text File  |  1994-02-17  |  3KB  |  58 lines

  1. Received: by bkhouse.cts.com (V1.17-beta/Amiga)
  2.       id <1p03@bkhouse.cts.com>; Mon, 31 Jan 94 00:58:25 PST
  3. Received: from freenet-news.carleton.ca by crash.cts.com with smtp
  4.     (Smail3.1.28.1 #18) id m0pQ6LR-00011LC; Fri, 28 Jan 94 19:27 PST
  5. Received: from freenet.carleton.ca by freenet-news.carleton.ca (4.1/SMI-4.0)
  6.     id AA01115; Fri, 28 Jan 94 22:27:49 EST
  7. Received: from localhost (ao443@localhost) by freenet.carleton.ca (8.6.4/8.6.4) id WAA09260; Fri, 28 Jan 1994 22:27:26 -0500
  8. Date: Fri, 28 Jan 1994 22:27:26 -0500
  9. Message-Id: <199401290327.WAA09260@freenet.carleton.ca>
  10. Reply-To: ao443@freenet.carleton.ca
  11. From: ao443@freenet.carleton.ca (Jason Maskell)
  12. To: AmigaE@bkhouse.cts.com
  13. Subject: Re: Amiga E bug...
  14.  
  15.  
  16. >Maybe you've tried this already (you mention DisposeLink()...) but an E
  17. >String (from a STRING declaration or String() call) or E list (from a LIST
  18. >declaration or List() call) *MUST* be deallocated with DisposeLink(), not
  19. >Dispose(), if you want to deallocate it before the program ends.  You
  20. >didn't make it clear whether you'd left out all DisposeXXX()'s and let the
  21. >CleanUp() routine deallocate everything...  I hope I'm not making an obvious
  22. >remark, but check that complex typed things (E Strings and E Lists) are only
  23. >deallocated by CleanUp() or DisposeLink().  Everything else (except static
  24. >things like immediate lists and string constants) can be deallocated with
  25. >Dispose() (or in CleanUp()).
  26. >
  27.     Well, obvious, but not annoying :>. Yes, I've tried it all three
  28. ways. Using Dispose(). (Which really should work on String() allocated
  29. stuff. This is an overs ight, in my opinion.), and with DisposeLink(), and
  30. CleanUp(). When I read the docs again, I figured, ah, DisposeLink, my
  31. mistake, but not only did it not work, the program, when using this code,
  32. generated over 10 megs of enforcer hit logs. (After this the 4000 ran out
  33. of memory.). When I try it without enforcer on my A 1200, it doesn't
  34. deallocate the memory, and just takes a long time pretending to do it. (I
  35. am assuming this is because Strings next field start uninitialized and it
  36. was trying to deallocate linked strings, but I really don't want to have
  37. to initialize these damn fields in speed important code.)
  38.     But, as far as I can see, it's a bug. If I can make myself, I'll
  39. try Link()ing the Strings to 0, and see what happens tonight. This is
  40. really dumb. Argh. Ah well, I shouldn't bitch, E is a truly great
  41. language, so I can forgive it a few flaws. 
  42.  
  43. >For a really complex program you might be playing with the program's
  44. >process structure.  If this is the case you might have messed up the
  45. >user data field which is what I think E uses to keep track of allocated
  46. >memory... That may be another thing to check.
  47.     Well, I certainly haven't touched it. I'm trying to make the
  48. program as system friendly as humanly possible. (I absolutely hate how
  49. Dirwork 1.62 and DirOpus 4.01 crash on my 1200.)
  50.  
  51. >I hope this is helpful (and not obvious and annoying...).
  52.  
  53.     Well, thanks for the attempt in any case, it was much appreciated.
  54. Is it possible you are one of the legendary beta testers of E 2.7?
  55.  
  56. --
  57. 'You see son, if this were Star Trek, we'd be negotiating with this Kobold.'
  58. - Unknown Angband Player